Rumor Mill is an application that allows users within the same AppleTalk zone to send anonymous rumor messages to all other users also running Rumor Mill.
NBP is used to register the rumor mill application on the network, and DDP is used to transmit the message packets. The messages are simply Str255 pascal strings.
A DDP socket listener is installed to receive the packets. This listener was
taken directly from Inside Macintosh: Networking, and the checksum code was taken directly from Inside Macintosh Volume II. The listener code is written in 68k assembly, as it is called at interrupt time. For each DDP packet it receives, it copies the data into a buffer and adds the buffer to a pending queue that is later read by the application.
The application code was written using CodeWarrior 7, and all of it is in main.c.
Possible enhancements to this code would be:
- Make the listener into a code resource, and have the app load the code resource to install the listener. This would allow for Native PPC apps.